package config

type UserSrvConfig struct {
	Host string `mapstructure:"host"`
	Port int    `mapstructure:"port"`
	Name string `mapstructure:"name"`
}

type JWTConfig struct {
	SigningKey string `mapstructure:"key"`
}

type ServerConfig struct {
	Name             string           `mapstructure:"name"`
	Port             int              `mapstructure:"port"`
	UserSrvInfo      UserSrvConfig    `mapstructure:"user_srv"`
	JWTInfo          JWTConfig        `mapstructure:"jwt"`
	TencentSmsConfig TencentSmsConfig `mapstructure:"sms"`
	RedisConfig      RedisConfig      `mapstructure:"redis"`
	ConsulInfo       ConsulConfig     `mapstructure:"consul" json:"consul"`
}

type TencentSmsConfig struct {
	SercetId     string `mapstructure:"sercetId"`
	SercetKey    string `mapstructure:"sercetKey"`
	TemplateCode string `mapstructure:"templateCode"`
	SignName     string `mapstructure:"signName"`
	SDKCode      string `mapstructure:"sdkCode"`
	Expire       int    `mapstructure:"expire"`
}
type ConsulConfig struct {
	Host string `mapstructure:"host" json:"host"`
	Port int    `mapstructure:"port" json:"port"`
}

type RedisConfig struct {
	Host string `mapstructure:"host"`
	Port int    `mapstructure:"port"`
}
